package com.beauty.dressing.rxandroid.api;

import com.beauty.dressing.common.bean.AgreementBean;
import com.beauty.dressing.common.bean.BaseParse;
import com.beauty.dressing.common.bean.DataBean;
import com.beauty.dressing.common.bean.LeaseBean;
import com.beauty.dressing.common.bean.LogisticsCompanyBean;
import com.beauty.dressing.common.bean.OrderBean;
import com.beauty.dressing.common.bean.RefuseJudgeBean;
import com.beauty.dressing.common.bean.RefuseJudgeExtraParser;
import com.beauty.dressing.common.bean.ReturnDetailInfoBean;

import java.util.Map;

import io.reactivex.Observable;
import retrofit2.http.FieldMap;
import retrofit2.http.FormUrlEncoded;
import retrofit2.http.POST;

public interface LeaseApi {
    @FormUrlEncoded
    @POST("leaseOrder")
    Observable<BaseParse<Object, OrderBean>> leaseOrder(@FieldMap Map<String, String> map);//获取订单信息

    @FormUrlEncoded
    @POST("myLease")
    Observable<BaseParse<Object, LeaseBean>> myLease(@FieldMap Map<String, String> map);//获取租赁信息

    @POST("explain")
    Observable<BaseParse<DataBean, Object>> explain();//获取退租与丢弃说明

    @FormUrlEncoded
    @POST("agreement")
    Observable<BaseParse<AgreementBean, Object>> agreement(@FieldMap Map<String, String> map);//退租与丢弃协议  1 退租协议  2.丢弃协议

    @FormUrlEncoded
    @POST("lostApply")
    Observable<BaseParse<Object, Object>> lostApply(@FieldMap Map<String, String> map);//丢失申请

    @FormUrlEncoded
    @POST("refuseJudge")
    Observable<RefuseJudgeExtraParser<RefuseJudgeBean, Object>> refuseJudge(@FieldMap Map<String, String> map);//退租判断

    @POST("getLogisticsCompany")
    Observable<BaseParse<Object, LogisticsCompanyBean>> getLogisticsCompany();//获取物流详情

    @FormUrlEncoded
    @POST("returnApply")
    Observable<BaseParse<Object, Object>> returnApply(@FieldMap Map<String, String> map);//获取物流详情

    @FormUrlEncoded
    @POST("returnDetail")
    Observable<BaseParse<ReturnDetailInfoBean, Object>> returnDetail(@FieldMap Map<String, String> map);//获取退租详情

    @FormUrlEncoded
    @POST("getLogisticsInfo")
    Observable<BaseParse<Object, Object>> getLogisticsInfo(@FieldMap Map<String, String> map);//获取退租详情

}
